#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
#include <vector>

int main()
{
    int n, x;
    cin >> n >> x;
    int val;
    vector<int> v(1,0);
    // int i = 1;
    // int _min = 0x3f3f3f3f,_max = -1;
    //vector<int> gap;
    //gap.push_back(0);
    // int prev = 0;
    // int jump = 0;
    while (cin >> val)
    {
        v.push_back(val);
        //v.push_back(val);
        // _min = min(val,_min);
        // _max = max(val,_max);
        // if(val>=2*x)
        // {
        //     jump = max(jump,i-prev);
        //     prev = i;
        //     //gap.push_back(i);
        // }
        //i++;
    }
    //gap.push_back(n);
    int right = 1, left = 1;
    int sum = 0;
    int y = 0;
    for (; right < v.size(); right++)
    {
        sum += v[right];
        if (sum >= 2 * x)
        {
            y = max(y, right - left + 1);
            sum -= v[left++];
            while (sum >= 2 * x)
            {
                sum -= v[left++];
            }
        }
    }
    if (y == 0)
    {
        cout << n;
    }
    else
    {
        cout << y;
    }
    // if(_max<=2*x)
    // {
    //     cout<<n;
    // }
    // else
    // {
    //     // for(int i = 1;i<gap.size();i++)
    //     // {
    //     //     jump = max(jump,gap[i]-gap[i-1]);
    //     // }
    //     cout<<jump;
    // }
    return 0;
}
//#include <iostream>
//using namespace std;
//#include <functional>
//#include <vector>
//#include <algorithm>
//int main()
//{
//    int n;
//    cin >> n;
//    vector<int> v;
//    int _min = INT_MAX, _max = -1;
//    while (n--)
//    {
//        int val;
//        char ch;
//        do
//        {
//            cin >> val >> ch;
//            v.push_back(val);
//            _min = min(_min, val);
//            _max = max(_max, val);
//        } while (ch != '\n');
//    }
//
//    sort(v.begin(), v.end());
//    int a, b;
//    for (int i = 1; i < v.size() - 1; i++)
//    {
//        if (v[i + 1] == v[i] + 2)
//        {
//            a = v[i] + 1;
//        }
//        if (v[i + 1] == v[i])
//        {
//            b = v[i];
//        }
//    }
//    cout << a << " " << b << endl;
//    return 0;
//}